<h2>bootstrap_ports</h2>
<hr>
<p>
<strong>Function</strong> - Return send rights to the system's control ports.
<h3>SYNOPSIS</h3>
<pre>
<strong>kern_return_t   bootstrap_ports</strong>
                <strong>(mach_port_t</strong>                          <var>bootstrap</var>,
                 <strong>bootstrap</strong>                         <var>host_control</var>,
                 <strong>host_control</strong>                     <var>device_master</var>,
                 <strong>device_master</strong>                <var>root_wired_ledger</var>,
                 <strong>root_wired_ledger</strong>            <var>root_paged_ledger</var>,
                 <strong>bootstrap</strong>                             <var>security</var><strong>);</strong>
</pre>
<h3>PARAMETERS</h3>
<dl>
<p>
<dt> <var>bootstrap</var> 
<dd>
[in bootstrap send right]
The bootstrap port obtained from \*Ltask_get_special_ports()\*O.
<p>
<dt> <var>host_priv</var> 
<dd>
[out host-control send right]
The control port for the host.
<p>
<dt> <var>device_master</var> 
<dd>
[out device-master send right]
The device master port.
<p>
<dt> <var>root_wired_ledger</var> 
<dd>
[out ledger send right]
The root wired kernel memory ledger port.
<p>
<dt> <var>root_paged_ledger</var> 
<dd>
[out ledger send right]
The root default memory managed space ledger 
port.
<p>
<dt> <var>security</var> 
<dd>
[out security send right]
The host security port, used for setting task 
identity.
</dl>
<h3>DESCRIPTION</h3>
<p>
The <strong>bootstrap_ports</strong> function returns a send right to
the host control, root
ledger, host security and device master ports.  The kernel will respond
to this message on the <strong>TASK_BOOTSTRAP_PORT</strong> given to the system bootstrap
task (task 1) with the system privileged ports.  It is the 
responsibility of the bootstrap task to manage the distribution
of these rights to other servers.
<p>
An OS personality can serve as a server on the TASK_BOOTSTRAP_PORT
for tasks or servers that it manages, and can regulate or interpose on
the ports in any way it deems necessary.
<h3>RETURN VALUES</h3>
<p>
Only generic errors apply.
<h3>RELATED INFORMATION</h3>
<p>
Functions:
<a href="device_open.html"><strong>device_open</strong></a>,
<a href="host_get_clock_control.html"><strong>host_get_clock_control</strong></a>,
<a href="host_get_clock_service.html"><strong>host_get_clock_service</strong></a>,
<a href="host_processor_set_priv.html"><strong>host_processor_set_priv</strong></a>,
<a href="host_processors.html"><strong>host_processors</strong></a>,
<a href="ledger_create.html"><strong>ledger_create</strong></a>,
<a href="task_set_security_token.html"><strong>task_set_security_token</strong></a>.
